home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #9 / Amiga Plus CD - 2004 - No. 09.iso / amigaplus / tools / amigaos4_only / sid4amigaos / sid4amiga / install_sid4amiga < prev    next >
Text File  |  2004-08-03  |  13KB  |  381 lines

  1. ; **********************************************
  2. ; ** Sid4Amiga Install - Getting Better....   **
  3. ; **                                          **
  4. ; **********************************************
  5.  
  6. (set #welcome  (cat "Welcome to Sid4Amiga\nThe new generation Sid Player for your Amiga\n"
  7.                 "\nAmiga Version, Global Prefs & MUI Multi Play Interface"
  8.                 "\nBy\nPaul Heams"
  9.                 "\n\nArtwork and Web Design by Chris Andrews"
  10.                 "\nOriginal Linux code base by Michael schwendt\n"
  11.                 "\n\n© Copyright 1999/2004 Paul Heams - Atlantech Productions")
  12. )
  13.  
  14. (set #backup   (cat "\n\nA Directory with this name already exists.\nIf a previous version has been "
  15.                     "installed here it will be overwriten\n\n"
  16.                     "Do you wish to proceed with the install?")
  17. )
  18.  
  19. (set #s4aDetected   (cat "\n\n..NOTE..\n\nIt appears that a version of Sid4Amiga is Running at the moment\n"
  20.                         "Please quit the existing application and re-run the Installation\n\n"
  21.                         "A reboot may be preferable.")
  22. )
  23. (set #s4aClear      (cat "\n\n..OK..\n\nIt appears that your system is ready to install Sid4Amiga\n"
  24.                      "Do not start Sid4Amiga until the\n"
  25.                         "installation has completed.")
  26. )
  27.  
  28. (set #IconCopy      ("\nWhat Icons do you wish to install by default?\n")
  29. )
  30.  
  31. (set #PSECopy      ("\nDo you want to install the PlaySid Emulation Library? The old library (V1.x) will be backed up into a drawer called  'PlaySidOriginal' within the LIBS: directory.\n")
  32. )
  33.  
  34. (set #startup-prompt (cat "\nAn assign for Sid4Amiga is usefull for some advanced functions.\n\n"
  35.                           "Your user-startup file will be altered and an Assign for 'S4A' will point to:\n\n")
  36. )
  37. (set #startup-prompt-2 ("\n\nIt is recommended you proceed with this.\n")
  38. )
  39.  
  40. ; ** GetVersion **
  41.  
  42.  (procedure P_GetVersion
  43.   ; Param:
  44.   ; #file
  45.   ;
  46.   ; Results:
  47.   ; #ver #rev
  48.   ;
  49.   ; Vars used:
  50.   ; #vernum
  51.  
  52.   (set #vernum (getversion (cat #file)))
  53.   (set #ver (/ #vernum 65536))
  54.   (set #rev (- #vernum (* #ver 65536)))
  55.  )
  56.  
  57. (complete 0)
  58.  
  59. (message #welcome)
  60.  
  61. ;*************************************************************************
  62. ;** Make sure that an older version of Sid4Amiga is not already running **
  63. ;*************************************************************************
  64. (if (run "S4AInstall/SidRunning")
  65.     ( (message #s4aDetected) (exit (quiet)) )
  66.         ( (message #s4aClear)                   )
  67. )
  68.  
  69. ;************************************
  70. ;** Get Avail Command if it exists **
  71. ;************************************
  72. (set #avail 0)
  73. (if (> (exists ("c:avail")) 0)   (set #avail "c:") )
  74. (if (> (exists ("sys:avail")) 0) (set #avail "sys:") )
  75.  
  76. ;*************
  77. ;** Install **
  78. ;*************
  79. (set #name
  80.    (askdir
  81.       (prompt "Sid4AmigaV3.40b4\n\nWhere would you like to install Sid4Amiga?\nA new directory called ''Sid4Amiga'' will be created.\n"
  82.       )
  83.       (help   "\nChoose the directory where Sid4Amiga should be"
  84.               "\ninstalled or updated."
  85.       )
  86.       (default "sys:")
  87.    )
  88. )
  89.  
  90. (set #Dname (tackon #name "Sid4Amiga"))
  91.  
  92. (if (exists #Dname)
  93.     (message #backup)
  94. )
  95.  
  96. (makedir #Dname
  97.  (infos)
  98. )
  99.  
  100. ; *************************
  101. ; ** modify user-startup **
  102. ; *************************
  103. ((startup "S4A"
  104.     (prompt (cat
  105.             #startup-prompt
  106.             #Dname
  107.             #startup-prompt-2
  108.     ))
  109.     (command (cat "Assign S4A: " #Dname))
  110.     (help @startup-help)
  111. )
  112. (makeassign "S4A" #Dname (safe)))
  113.  
  114.  
  115. ; ***********************
  116. ; ** Get type of icons **
  117. ; ***********************
  118. (set #icontype 0)
  119. (set #PickIcon 0)
  120. (set #PickIcon (askchoice (choices "Combined Original and OS3.5" "OS3.5" "New Icons")
  121.                         (prompt #IconCopy)
  122.                         (help "Select your icons set.\nif you are unsure I suggest you select the topmost option.")
  123.                         (default #icontype)
  124.             )
  125.  
  126. ;** Play Sid Emulation Library **
  127.  
  128. (set #InstallType 0)
  129. (set #InstallPSE 0)
  130. (set #InstallPSE (askchoice (choices "Yes" "No")
  131.                         (prompt #PSECopy)
  132.                         (help "Sid4Amiga contains a PlaySid emulation library to replace PlaySid on your machine. It will work with HippoPlayer, Delitracker, the PlaySid GUI and other programs, but will not work with emulators such as Magic 64.")
  133.                         (default #InstallType)        
  134.     )
  135.  
  136. (set #cpu 2)
  137. ;(set #S4Acpu "Which CPU do you have?")
  138. (set #PickCPU 2)
  139. ;
  140. ;
  141. ;(set #PickCPU (askchoice (choices "68020" "68040FPU" "PPC (WarpOS)")
  142. ;                        (prompt #S4Acpu)
  143. ;                        (help "Please select the main processor of your machine - If you don't know then select 68020!")
  144. ;                        (default #cpu)
  145. ;            )
  146. ;) 
  147.  
  148. ;***************
  149. ;** Main Copy **
  150. ;***************
  151. (set destdir #Dname)
  152.  
  153. (copyfiles (prompt "Copying Sid4AmigaMUI")         (source "Sid4AmigaMUI")     (dest destdir) )
  154. (copyfiles (prompt "Copying Sid4AmigaGlobalPrefs")     (source "S4A_Preferences")     (dest destdir) )
  155. (copyfiles (prompt "Copying Guide")             (source "Sid4Amiga.guide")     (dest destdir) )
  156.  
  157. ;** ICONS **
  158. (if (= #PickIcon 0)
  159. (
  160.     (copyfiles (prompt "Copying Sid4AmigaMUI Icon (STD)") (source "Sid4AmigaMUI.info") (dest destdir) )
  161.     (copyfiles (prompt "Copying Sid4AmigaGlobalPrefs Icon (STD)") (source "S4A_Preferences.info") (dest destdir) )
  162.     (copyfiles (prompt "Copying Guide Icon (STD)") (source "Sid4Amiga.guide.info") (dest destdir) )
  163.     (copyfiles (prompt "Copying Drawer Icon (STD)") (source "/Sid4Amiga.info") (dest #name))
  164. ))
  165.  
  166. (if (= #PickIcon 1)
  167. (
  168.     (copyfiles (prompt "Copying Sid4AmigaMUI Icon (OS3.5)") (source "Icons/OS3.5/Sid4AmigaMUI.info") (dest destdir) )
  169.     (copyfiles (prompt "Copying Sid4AmigaGlobalPrefs Icon (OS3.5)") (source "Icons/OS3.5/S4A_Preferences.info") (dest destdir) )
  170.     (copyfiles (prompt "Copying Guide Icon (OS3.5)") (source "Icons/OS3.5/Sid4Amiga.guide.info") (dest destdir) )
  171.     (copyfiles (prompt "Copying Drawer Icon (OS3.5)") (source "Icons/OS3.5/Sid4Amiga.info") (dest #name))
  172. ))
  173.  
  174. (if (= #PickIcon 2)
  175. (
  176.     (copyfiles (prompt "Copying Sid4AmigaMUI Icon (NI)") (source "Icons/NewIcons/Sid4AmigaMUI.info") (dest destdir) )
  177.     (copyfiles (prompt "Copying Sid4AmigaGlobalPrefs Icon (NI)") (source "Icons/NewIcons/S4A_Preferences.info") (dest destdir) )
  178.     (copyfiles (prompt "Copying Guide Icon (NI)") (source "Icons/NewIcons/Sid4Amiga.guide.info") (dest destdir) )
  179.     (copyfiles (prompt "Copying Drawer Icon (NI)") (source "Icons/NewIcons/Sid4Amiga.info") (dest #name))
  180. ))
  181.  
  182. (complete 35)
  183.  
  184. ; ***********************************
  185. ; ** Copy over correct CPU Version **
  186. ; ***********************************
  187. (if (= #PickCPU 0) (set #mainfile "Sid4Amiga680x0/Sid4Amiga020") )
  188. (if (= #PickCPU 1) (set #mainfile "Sid4Amiga680x0/Sid4Amiga040fpu") )
  189. (if (= #PickCPU 2) (set #mainfile "Sid4Amiga") )
  190.  
  191. (complete 50)
  192. (set mainsource #mainfile)
  193. (copyfiles (prompt "Copying Main Executable")
  194.            (source mainsource)
  195.            (dest destdir)
  196.            (newname "Sid4Amiga") 
  197. )
  198.  
  199. ;*******************************
  200. ;** Copy GUI / Graphics Etc.. **
  201. ;*******************************
  202. (complete 65)
  203. (set #Tname (tackon #Dname "Images"))
  204. (makedir #Tname)
  205. (set destimages #Tname)
  206.  
  207. ;******************************************************************************
  208. ;** If the Images already exist and we do not have avail then do not copy    **
  209. ;** them over - this is because of a lock which avail will flush             **
  210. ;******************************************************************************
  211. (if (<> #avail 0)
  212.     (
  213.     (run (tackon #avail "avail") "flush >nil:")
  214.         (copyfiles (prompt "Copying Sid Logo") (source "Images/newsidupright_s.iff") (dest destimages))
  215.         (copyfiles (prompt "Copying C64 Logo") (source "Images/CKey.iff") (dest destimages))
  216.     )
  217.     (
  218.     (set #NEWname (tackon destimages "newsidupright_s.iff"))
  219.     (if (= (exists #NEWname) 0)
  220.         (copyfiles (prompt "Copying Sid Logo") (source "Images/newsidupright_s.iff") (dest destimages))
  221.  
  222.     )
  223.     (set #NEWname (tackon destimages "CKey.iff"))
  224.     (if (= (exists #NEWname) 0)
  225.         (copyfiles (prompt "Copying C64 Logo") (source "Images/CKey.iff") (dest destimages))
  226.     )
  227.     )
  228. )
  229.  
  230. (complete 70)
  231. (set #Tname (tackon #Dname "Images/Gadgets"))
  232. (makedir #Tname)
  233. (set destgadgets #Tname)
  234. (copyfiles (prompt "Copying Gadgets") (source "Images/Gadgets/") (dest destgadgets) (pattern "#?"))
  235.  
  236. ; ************************
  237. ; ** Copy Example Tunes **
  238. ; ************************
  239. (complete 80)
  240. (set #Tname (tackon #Dname "SidTunes"))
  241. (if (= (exists #Tname) 0)
  242.   (
  243.     (makedir #Tname)
  244.  
  245.     (if (= #PickIcon 0)
  246.         (copyfiles (prompt "Copying Drawer Icon (STD)") (source "SidTunes.info") (dest destdir)) 
  247.     )
  248.     (if (= #PickIcon 1)
  249.         (copyfiles (prompt "Copying Drawer Icon (OS3.5)") (source "Icons/OS3.5/SidTunes.info") (dest destdir)) 
  250.     )
  251.     (if (= #PickIcon 2)
  252.         (copyfiles (prompt "Copying Drawer Icon (NI)") (source "Icons/NewIcons/SidTunes.info") (dest destdir)) 
  253.     )
  254.  
  255.   )
  256. )
  257.  
  258. (set desttunes #Tname)
  259. (copyfiles (prompt "Copying SidTunes")
  260.            (source "SidTunes/")
  261.            (dest desttunes)
  262.            (pattern "#?")
  263. )
  264.  
  265. ;*******************
  266. ;** Play List Dir **
  267. ;*******************
  268. (complete 86)
  269. (set #Tname (tackon #Dname "PlayLists"))
  270. (if (= (exists #Tname) 0)
  271.   (
  272.     (makedir #Tname)
  273.  
  274.     (if (= #PickIcon 0)
  275.         (copyfiles (prompt "Copying Drawer Icon (STD)") (source "PlayLists.info") (dest destdir)) 
  276.     )
  277.     (if (= #PickIcon 1)
  278.         (copyfiles (prompt "Copying Drawer Icon (OS3.5)") (source "Icons/OS3.5/PlayLists.info") (dest destdir)) 
  279.     )
  280.     (if (= #PickIcon 2)
  281.         (copyfiles (prompt "Copying Drawer Icon (NI)") (source "Icons/NewIcons/PlayLists.info") (dest destdir)) 
  282.     )
  283.  
  284.   )
  285. )
  286.  
  287. ;******************
  288. ;** AltIcons Dir **
  289. ;******************
  290. (set #IconD (tackon #Dname "Icons"))
  291. (if (= (exists #IconD) 0)
  292.   (
  293.     (makedir #IconD)
  294.  
  295.     (if (= #PickIcon 0)
  296.         (copyfiles (prompt "Copying Drawer Icon (STD)") (source "Icons.info") (dest destdir)) 
  297.     )
  298.     (if (= #PickIcon 1)
  299.         (copyfiles (prompt "Copying Drawer Icon (OS3.5)") (source "Icons/OS3.5/Icons.info") (dest destdir)) 
  300.     )
  301.     (if (= #PickIcon 2)
  302.         (copyfiles (prompt "Copying Drawer Icon (NI)") (source "Icons/NewIcons/Icons.info") (dest destdir)) 
  303.     )
  304.   )
  305. )
  306. (set desticons #IconD)
  307. (copyfiles (prompt "Copying Alternative Icons") (source "Icons") (dest desticons) (pattern "#?"))
  308.  
  309. ; ****************************************
  310. ; ** Copy Libs (Not required on OS4) **
  311. ; ****************************************
  312. (complete 90)
  313. ;(if (exists "libs:")
  314. ;   (copyfiles (prompt "Copying Sid4Amiga.library") (source "Libs/Sid4Amiga.library") (dest "libs:"))
  315. ;)
  316.  
  317. (complete 91)
  318. (if (= #InstallPSE 0)
  319.     (   
  320.         (if ( exists ("libs:playsid.library"))
  321.             (
  322.                  (set #file "libs:playsid.library")    
  323.                  (P_GetVersion)
  324.                  (if (< #ver 2)
  325.                      (copyfiles (prompt "Backing up old PlaySid.library") (source "Libs:playsid.library") (dest "libs:PlaySidOriginal"))
  326.                  )
  327.             )    
  328.         )  
  329.         
  330.         (if (exists "libs:")
  331.             (copyfiles (prompt "Copying PlaySid(Emulation).library") (source "Libs/PlaySid.library") (dest "libs:"))
  332.         )
  333.     )
  334. )
  335.  
  336. (complete 93)
  337. (set #multiview 0)
  338.  
  339. (if (> (exists ("c:multiview")) 0) (set #multiview "c:") )
  340. (if (> (exists ("sys:Utilities/multiview")) 0) (set #multiview "sys:Utilities") )
  341. (if (> (exists ("sys:Tools/multiview")) 0) (set #multiview "sys:Tools") )
  342.  
  343. (if (<> #multiview 0)
  344.     ((run (tackon #multiview "multiview ") "S4AInstall/Welcome.text")))
  345.  
  346. (complete 95) 
  347. (run "S4A_preferences")
  348.  
  349. ; **********************
  350. ; ** Delete old Files **
  351. ; **********************
  352. (complete 96) 
  353. (set #OldFile (tackon #Dname "Sid4AmigaGUI"))
  354. (if (exists #OldFile) (delete #OldFile)
  355. )
  356. (set #OldFile (tackon #Dname "Sid4AmigaPPC.guide"))
  357. (if (exists #OldFile) (delete #OldFile)
  358. )
  359. (set #OldFile (tackon #Dname "Sid4AmigaPPC.guide.info"))
  360. (if (exists #OldFile) (delete #OldFile)
  361. )
  362. (set #OldFile (tackon #Dname "Sid4AmigaGUI.info"))
  363. (if (exists #OldFile) (delete #OldFile)
  364. )
  365.  
  366. ; ********************
  367. ; ** Flush old libs **
  368. ; ********************
  369. (complete 97)
  370. (if (<> #avail 0)
  371.     ((run (tackon #avail "avail") "flush >nil:"))
  372. )
  373. (complete 99)
  374. (message "\nInstallation complete."
  375.          "\n\nStart Sid4Amiga by clicking the GUI icon\nor running the executable ''Sid4Amiga'' by CLI."
  376. )
  377.  
  378. (exit (quiet))
  379.